package com.lazy;

/**
 * 优点；节省内存
 * 1、先静态、后动态
 * 2、从上至下；从右至左
 * 3、先属性后方法
 *
 * @author: cong zhi
 * @createDate: 2022/4/23 12:02
 * @updateUser: cong zhi
 * @updateDate: 2022/4/23 12:02
 * @updateRemark: 修改内容
 * @version: v1.0
 */
public class LazySimpleSingletion {

    /**
     * 提供类的静态成员变量
     */
    private static LazySimpleSingletion instance;

    /**
     * 私有构造
     */
    private LazySimpleSingletion() {
    }

    /**
     * 提供全局访问点
     * synchronized 关键字缺点，它控制了所有线程资源,永远只有一个线程占用资源
     *
     * @return
     */
    public static synchronized LazySimpleSingletion getInstance() {
        if (null == instance) {
            instance = new LazySimpleSingletion();
        }
        return instance;
    }
}
